package com.example.logintest0414;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Context;
import android.os.Bundle;
import android.widget.ImageView;
import android.widget.Toast;

import com.bumptech.glide.Glide;
import com.youth.banner.Banner;
import com.youth.banner.BannerConfig;
import com.youth.banner.Transformer;
import com.youth.banner.listener.OnBannerListener;
import com.youth.banner.loader.ImageLoader;

import java.util.ArrayList;
import java.util.List;

public class MainActivity extends AppCompatActivity implements OnBannerListener {

    private Banner mBanner;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.tablelayout);
        initView();
    }

    private void initView() {
        mBanner = findViewById(R.id.mBanner);
        //图片资源
        int[] imageResourceID = new int[]{R.mipmap.img02,R.mipmap.imge02,R.mipmap.img01};
        List<Integer> imgeList = new ArrayList<>();

        //轮播标题
        String[] mtitle = new String []{"图片1","图片2","图片3"};
        List<String> titleList = new ArrayList<>();

        for (int i=0;i<imageResourceID.length;i++){
            imgeList.add(imageResourceID[i]); //把图片资源循环放入list里面
            titleList.add(mtitle[i]);  //把标题循环设置进列表里面
            //设置图片加载器，通过Glide加载图片
            mBanner.setImageLoader(new ImageLoader() {
                @Override
                public void displayImage(Context context, Object path, ImageView imageView) {
                    Glide.with(MainActivity.this).load(path).into(imageView);
                }
            });
            //设置轮播的动画效果
            mBanner.setBannerAnimation(Transformer.Accordion);
            mBanner.setImages(imgeList);  //设置图片资源
            mBanner.setBannerStyle(BannerConfig.CIRCLE_INDICATOR_TITLE_INSIDE);//设置banner显示样式（带标题的样式）
            mBanner.setBannerTitles(titleList);  //设置标题集合（当banner样式有显示title是）
            //设置指示器位置（图片下面的那个小圆点）
            mBanner.setIndicatorGravity(BannerConfig.CENTER);
            mBanner.setDelayTime(3000);  //设置监听时长
            mBanner.setOnBannerListener(this); //设置监听
            mBanner.start();//开始进行banner渲染
        }
    }

    @Override
    protected void onStart() {
        super.onStart();
        mBanner.startAutoPlay(); //开始轮播
    }

    @Override
    protected void onStop() {
        super.onStop();
        mBanner.stopAutoPlay();  //结束轮播
    }

    @Override
    public void OnBannerClick(int position) {
        Toast.makeText(this,"你点击了"+(position +1)+"张轮播图",Toast.LENGTH_SHORT).show();
    }
}